Repository navigation
docs: align external-node authoring and operations with current platform - #13
Merged
Merged
Conversation
makseq
added a commit
that referenced
this pull request
Oct 13, 2026
Brings the branch up to main: the documentation alignment (#13) and the Data Source input (#14). Three files conflicted; everything else merged by itself and was read through afterwards. Conflicts: - README.md: the opening paragraph. Main's dated verification statement is kept word for word; this branch had only bumped a test count in the paragraph main replaced, and the counts are refreshed separately from a re-measured run. The two search-facts bullets in the list below it are kept. - docs/AUTHORING.md, "node.py and this skeleton", two places. Main's new paragraph about the input check stays, and the sentence under it now counts "Three things" because this branch adds a third. That third bullet (the report document is inventoried after its upload) is kept, followed by main's rewritten paragraph about the `report` port in place of the older one. - docs/PROTOCOL.md, section 4.4. Main had only dropped the line numbers from a citation inside the paragraph "Nothing in the orchestrator ever reads result.json", which this branch replaces: the replacement stays, and it already cites by file and function name. The background note that opens the section is shortened to what is true in main's text: it no longer refers to line numbers (main's document has none) or says that every other section is measured against the commit the preamble names (the Data Source passages are not). Merged without conflict and checked by reading: CONFORMANCE-BASELINE.md, conformance/README.md, docs/OPERATIONS.md, docs/README.md, node.py and tests/test_harness_self.py. The search-facts tests need no change for main's harness: the new Job parameters have defaults. Provenance blocks, pinned commits and test counts are left as each side wrote them; they are refreshed separately from a re-measured run. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01XQDS15iYfpfCaTY6LoDx9e
makseq
added a commit
that referenced
this pull request
Oct 13, 2026
) An external node may now put an optional `facts` list into result.json — [{"key": "task", "value": "282139672"}, {"key": "input", "value": "tasks.json"}] — and the orchestrator records each entry in its search-facts table when it collects the run (at marker acceptance, on any outcome, under the 1 MiB ceiling), so the run is found by task:…, input:…, or a bare id. node.py: one `input` fact per copied input (the envelope's own name); the orchestrator's rules applied at write time (claim(): key grammar, value ≤512 chars, no control characters or lone surrogates, cap 10,000; skips counted in summary.facts_not_claimed); the report written on the failure path before the marker (marker strictly last; a refused upload is retried and never falsely inventoried — RESULT_UPLOADED); not attempted on the cancel path (a stopping node that abandons in-flight connections cannot open a new one — one plain line says so). Conformance harness: validate_result shape-checks `facts` NON-fatally (facts are never load-bearing): the orchestrator's rules mirrored constant for constant — key ^[a-z][a-z0-9_]{0,63}\Z, value str|int non-bool ≤512 free of control characters and lone surrogates, meta absent or a flat object (≤32 keys of 1–64 chars, scalar values) — reported as recommendations. Docs: PROTOCOL.md (the facts key, the flat meta rule, when it is read), AUTHORING.md ("Make the run findable" + checklist), OPERATIONS.md limits, README + capability matrix, conformance README, CONFORMANCE-BASELINE counts. Companion of HumanSignal/orchestrator "feat(external): search facts for external nodes". Brought up to date on 2026-10-13, after the orchestrator half (#296) was deployed: merged with main a9ca5b8 (#13, #14 — the Data Source input); four statements corrected against the platform as deployed (reserved search prefixes; no facts after an operator's Cancel of running work; the `input` fact of a Data Source upload carries the cleaned name; one pointer); and provenance refreshed from a re-measured run against orchestrator 86461801: 153 tests green with the verbatim citation check (152 + the one tolerated skip without orchestrator sources), groups 62/67/24, bases 83/45/25, 38 citations / 90 fragments, mutation verifier 12/12. Three sentences that had gone stale since 2026-09-10 were fixed (registration is under "Organization"; the setup command no longer says there is no UI; a pointer). Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01AuqWuKD5dik1RMBRkcpbAj Claude-Session: https://claude.ai/code/session_01XQDS15iYfpfCaTY6LoDx9e
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
The node-authoring documentation still described the old runtime-deadline behavior and treated customer-run containers as the only deployment option. This update aligns all 12 tracked Markdown files with hello-node
mainatc768c02and orchestrator's defaultmasterat30b0950a.It documents the current stop/report window, the distinct limitations of operator cancellation, retained logs and failure-marker diagnostics, registration constraints, and hosted builds. Historical measurements retain their dates and provenance. The fixture README remains unchanged after verification;
node.pychanges are comments/docstrings only.Verification:
git diff --checkclean.No production execution, real S3 transfer, hosted build or new mutation campaign was run. Companion platform documentation PR: https://github.com/HumanSignal/orchestrator/pull/301.